
/*
 * spa.model.comment.js
 * 댓글 관련 모델.
 *
 */

spa.model.comment = function() {
  // Module variables start
  var configMap = {
  },
  stateMap = {
    $json : null,
  },
  jqueryMap = {
  },
  initModule, getJSON, getComment, saveComment;
  // Module variables end
  
  // public methods start
  
  // /initModule/ start
  initModule = function() {
  };
  // /initModule/ end
  
  // /getJSON/ start
  getJSON = function() {
    return stateMap.$json;
  };
  // /getJSON/ end
  // /getComment/ Start
  getComment = function( article_id ) {
    $.ajax({
      type: "POST",
      url: "jsp/CommentLoad.jsp",
      data: {
        "aid" : article_id
      },
      dataType: "json",
      success : function( response ) {
        spa.view.renderComment(response, article_id );
      }
    });

  };
  // /getComment/ End
  // /saveComment/ Start
  saveComment = function( article_id, text ) {
    $.ajax({
      type: "POST",
      url: "jsp/CommentSave.jsp",
      data: {
        "aid" : article_id,
        "text" : text
      },
      dataType: "json",
      success : function( response ) {
        if ( response.result === "true" ) {
          spa.model.comment.getComment( article_id );
        }
        else if ( text == "" ) {
          alert("댓글 내용을 입력하세요.");
        }
        else {
          alert(response.log);
        }
      }
    });
  };
  // /saveComment/ End
  // public methods end

  return {
    initModule : initModule,
    getJSON : getJSON,
    getComment : getComment,
    saveComment : saveComment
  };
}();
